package com.pur.zsms.common.exception;

import java.util.List;

/**
 * 系统运行异常，框架和声明式异常负责处理，应用程序不需要特别处理
 * 
 * @author Colin Chen
 * 
 */
@SuppressWarnings("serial")
public class SystemException extends GenericException {

  public SystemException(String message) {
    super(message);
  }

  public SystemException(String message, Object param) {
    super(message);
    addParam(param);
  }
  /**
   * 定义错误信息的key值和参数信息
   * 显示信息需要getText(message,paramList);
   * 例如：message="The disk \"{0}\" contains {1} files."
   * List paramList = new ArrayList();
   * paramList.add("C");
   * paramList.add(new Long(100));
   * 生成信息为：The disk "C" contains 100 files.
   * @param message 信息对应的key值
   * @param paramList key中需要注入的参数信息
   */
  public SystemException(String message, List paramList) {
    super(message);
    addParamList(paramList);
  }

  public SystemException(Throwable cause) {
    super(cause);
  }

  /**
   * @param message
   * @param cause
   */
  public SystemException(String message, Throwable cause) {
    super(message, cause);
  }

  /**
   * @param message
   * @param cause
   * @param param
   */
  public SystemException(String message, Throwable cause, Object param) {
    super(message, cause);
    addParam(param);
  }

  /**
   * 定义错误信息的key值和参数信息
   * 显示信息需要getText(message,paramList);
   * @param message
   * @param cause
   * @param paramList
   */
  public SystemException(String message, Throwable cause, List paramList) {
    super(message, cause);
    addParamList(paramList);
  }
}
